const fs = require("fs");
const path = require("path");

// 读取 package.json
const packageJsonPath = path.join(__dirname, "../package.json");
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8"));

// 读取本目录下所有.json
const jsonFiles = fs
    .readdirSync(__dirname)
    .filter((file) => file.endsWith(".json"));

// 遍历所有.json文件，将package.json中的name字段写入到对应的.json文件中

jsonFiles.forEach((file) => {
    const buildJsonTemplatePath = path.join(__dirname, file);
    let buildJsonTemplate = {};
    if (fs.existsSync(buildJsonTemplatePath)) {
        buildJsonTemplate = JSON.parse(
            fs.readFileSync(buildJsonTemplatePath, "utf8")
        );
    }

    // 合并 package.json 中的 name 到 build.json 模板中
    const buildJson = {
        ...buildJsonTemplate,
        productName: packageJson.name,
        // 其他字段可以保持不变，或者根据需要动态修改
    };
    
    fs.writeFileSync(buildJsonTemplatePath, JSON.stringify(buildJson, null, 2), "utf8");
});
// const buildJsonTemplatePath = path.join(__dirname, 'builder.json');

console.log(
    "build.json has been generated with package.json name as productName"
);
